package com.mkb.mapper;

import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface BaseMapper<T> {
    /**
     * 删除
     * @param id
     * @return
     */
    int deleteById(Long id);

    /**
     * 插入
     * @param record
     * @return
     */
    int insert(T record);

    /**
     * 插入
     * @param doList
     * @return
     */
    int insertBatch(@Param(value = "doList") List<T> doList);

    /**
     * 单个查询
     * @param id
     * @return
     */
    T getById(Long id);

    /**
     * 更新
     * @param record
     * @return
     */
    int update(T record);

    int count(Map<String, Object> map);

    /**
     * 查询集合
     * @param params
     * @return
     */
    List<T> queryList(Map<String, Object> params);
}
